Avionics computing systems can include multiple processing devices that are configured to host one or more software applications. Hosting software applications on different hardware devices can allow partitioning of different software DAL level applications, or partitioning for purposes of integrating multiple different software products into a single system. Such software applications and/or processing devices can be associated with various design assurance levels (DALs) specifying a level of rigor used in the development and implementation of the software applications. For instance, systems that include multiple DAL levels must take measures to protect a higher DAL level processor from receiving corrupted data associated with a lower DAL level.
Conventional systems wherein different software applications communicate with each other may implement software techniques for preventing such corruption of data between the different software applications. In such conventional systems, the higher DAL level software may act as a gatekeeper of input/output (I/O) data to ensure that the data supports the higher DAL software application as well as the lower DAL software application. For instance, a lower DAL level processing device can provide a communication request to the higher DAL level processing device, and the higher DAL level processing device can determine whether to grant the lower DAL level processing device communication access to an I/O interface or to maintain the communication to support the higher DAL level processing.